namespace study6_01 {

    // partial 部分
    // 用于将 T中的所有属性设置为可选

    // 源码
    type Partial<T> = {
        [P in keyof T]?: T[P]
    }


    // 使用前
    type Person = {
        name: string
        age: number
    }

    type P = Partial<Person>

    // 转换后属性全部转为了可选
    // type p = {
    //     name?: string | undefined;
    //     age?: number | undefined;
    // }



    // 使用
    let uer: P = {
        name: 'asd'
    }

    console.log(uer); // { name: 'asd' }




}